<html>
  <head>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link rel="stylesheet" type="text/css" href="..\..\..\JavaDoc.css">
  </head>
  <body>
    <table class="nav">
      <tr>
        <td class="nav1" colspan="2">
          <table cellspacing="3">
            <tr>
              <td>
                <a href="..\..\..\overview-summary.html"> Overview </a>
              </td>
              <td>
                <a href="namespace-summary.html">Namespace</a> </td>
              <td class="nav1sel"> Type </td>
              <td>Use </td>
              <td>Tree </td>
              <td>Deprecated </td>
              <td>Index </td>
              <td>Help </td>
            </tr>
          </table>
        </td>
        <td class="logo" rowspan="2">.NET Framework</td>
      </tr>
      <tr class="nav2">
        <td>PREV TYPE    NEXT TYPE</td>
        <td>FRAMES    NO FRAMES</td>
      </tr>
      <tr class="nav2">
        <td>SUMMARY: INNER | <a href="#field-summary">FIELD</a> | <a href="#constructor-summary">CONST</a> | PROP | <a href="#method-summary">METHOD</a> | OP | EVENT</td>
        <td>DETAIL: <a href="#field-detail">FIELD</a> | <a href="#constructor-detail">CONST</a> | PROP | <a href="#method-detail">METHOD</a> | OP | EVENT</td>
      </tr>
    </table>
    <hr>
    <h2>
      <span class="namespaceName">NVelocity.Runtime.Resource</span>
      <br>
      <span class="className">Class ResourceManagerImpl</span>
    </h2>
    <p> Class to manage the text resource for the Velocity
            Runtime.
            *
            </p>
    <a name="field-summary">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th colspan="2">Field Summary</th>
        </tr>
      </thead>
      <tr>
        <td class="fieldType" valign="top">NVelocity.Runtime.Resource.ResourceCache</td>
        <td class="field">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.globalCache">globalCache</a>
          <br>          Object implementing ResourceCache to
            be our resource manager's Resource cache.
            </td>
      </tr>
      <tr>
        <td class="fieldType" valign="top">int</td>
        <td class="field">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.RESOURCE_CONTENT">RESOURCE_CONTENT</a>
          <br>         A static content resource.
            </td>
      </tr>
      <tr>
        <td class="fieldType" valign="top">int</td>
        <td class="field">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.RESOURCE_TEMPLATE">RESOURCE_TEMPLATE</a>
          <br>         A template resources.
            </td>
      </tr>
      <tr>
        <td class="fieldType" valign="top">System.Collections.ArrayList</td>
        <td class="field">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.resourceLoaders">resourceLoaders</a>
          <br>         The List of templateLoaders that the Runtime will
            use to locate the InputStream source of a template.
            </td>
      </tr>
      <tr>
        <td class="fieldType" valign="top">NVelocity.Runtime.RuntimeServices</td>
        <td class="field">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.rsvc">rsvc</a>
        </td>
      </tr>
    </table>
    <br>
    <a name="constructor-summary">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th colspan="2">Constructor Summary</th>
        </tr>
      </thead>
      <tr>
        <td class="constructor" valign="top">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.#ctor">ResourceManagerImpl</a>()<br>        Initializes a new instance of the ResourceManagerImpl class.</td>
      </tr>
    </table>
    <br>
    <a name="property-summary">
    </a>
    <a name="method-summary">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th colspan="2">Method Summary</th>
        </tr>
      </thead>
      <tr>
        <td class="returnType" valign="top">string</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.getLoaderNameForResource(System.String)">getLoaderNameForResource</a>(string resourceName)<br>          Determines is a template exists, and returns name of the loader that
            provides it.  This is a slightly less hokey way to support
            the Velocity.templateExists() utility method, which was broken
            when per-template encoding was introduced.  We can revisit this.
            *
            </td>
      </tr>
      <tr>
        <td class="returnType" valign="top">NVelocity.Runtime.Resource.Resource</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.getResource(System.String,System.Int32,System.String)">getResource</a>(string resourceName, int resourceType, string encoding)<br>         Gets the named resource.  Returned class type corresponds to specified type
            (i.e. <pre class="code">Template</pre> to <pre class="code">RESOURCE_TEMPLATE</pre>).
            *
            </td>
      </tr>
      <tr>
        <td class="returnType" valign="top">NVelocity.Runtime.Resource.Resource</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.getResource(System.String,System.Int32)">getResource</a>(string resourceName, int resourceType)<br>         Gets the named resource.  Returned class type corresponds to specified type
            (i.e. <pre class="code">Template</pre> to <pre class="code">RESOURCE_TEMPLATE</pre>).
            *
            </td>
      </tr>
      <tr>
        <td class="returnType" valign="top">void</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.initialize(NVelocity.Runtime.RuntimeServices)">initialize</a>(NVelocity.Runtime.RuntimeServices rs)<br>         Initialize the ResourceManager. It is assumed
            that assembleSourceInitializers() has been
            called before this is run.
            </td>
      </tr>
      <tr>
        <td class="returnType" valign="top">NVelocity.Runtime.Resource.Resource</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.loadResource(System.String,System.Int32,System.String)">loadResource</a>(string resourceName, int resourceType, string encoding)<br>        
            Loads a resource from the current set of resource loaders
            </td>
      </tr>
      <tr>
        <td class="returnType" valign="top">void</td>
        <td class="method">
          <a href="#NVelocity.Runtime.Resource.ResourceManagerImpl.refreshResource(NVelocity.Runtime.Resource.Resource,System.String)">refreshResource</a>(NVelocity.Runtime.Resource.Resource resource, string encoding)<br>          Takes an existing resource, and 'refreshes' it.  This
            generally means that the source of the resource is checked
            for changes according to some cache/check algorithm
            and if the resource changed, then the resource data is
            reloaded and re-parsed.
            *
            </td>
      </tr>
    </table>
    <br>
    <table class="subtable" cellspacing="0">
      <thead>
        <tr>
          <th>Methods inherited from class System.Object</th>
        </tr>
      </thead>
      <tr>
        <td>
          <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl/Equals(System.html#Object)">Equals</a>, <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl.html#Finalize">Finalize</a>, <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl.html#GetHashCode">GetHashCode</a>, <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl.html#GetType">GetType</a>, <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl.html#MemberwiseClone">MemberwiseClone</a>, <a href="..\..\..\NVelocity/Runtime/Resource/ResourceManagerImpl.html#ToString">ToString</a></td>
      </tr>
    </table>
    <br>
    <a name="operator-summary">
    </a>
    <a name="event-summary">
    </a>
    <br>
    <a name="field-detail">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th>Field Detail</th>
        </tr>
      </thead>
    </table>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.globalCache">
    </a>
    <h3>globalCache</h3>
    <pre>protected internal NVelocity.Runtime.Resource.ResourceCache <b>globalCache</b></pre>
    <dl>
      <dd>
        <p>  Object implementing ResourceCache to
            be our resource manager's Resource cache.
            </p>
        <p>
        </p>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.RESOURCE_CONTENT">
    </a>
    <h3>RESOURCE_CONTENT</h3>
    <pre>public int <b>RESOURCE_CONTENT</b></pre>
    <dl>
      <dd>
        <p> A static content resource.
            </p>
        <p>
        </p>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.RESOURCE_TEMPLATE">
    </a>
    <h3>RESOURCE_TEMPLATE</h3>
    <pre>public int <b>RESOURCE_TEMPLATE</b></pre>
    <dl>
      <dd>
        <p> A template resources.
            </p>
        <p>
        </p>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.resourceLoaders">
    </a>
    <h3>resourceLoaders</h3>
    <pre>protected internal System.Collections.ArrayList <b>resourceLoaders</b></pre>
    <dl>
      <dd>
        <p> The List of templateLoaders that the Runtime will
            use to locate the InputStream source of a template.
            </p>
        <p>
        </p>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.rsvc">
    </a>
    <h3>rsvc</h3>
    <pre>protected internal NVelocity.Runtime.RuntimeServices <b>rsvc</b></pre>
    <dl>
      <dd>
        <p>
        </p>
        <p>
        </p>
      </dd>
    </dl>
    <a name="constructor-detail">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th>Constructor Detail</th>
        </tr>
      </thead>
    </table>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.#ctor">
    </a>
    <h3>ResourceManagerImpl</h3>
    <pre>public ResourceManagerImpl()</pre>
    <dl>
      <dd>
        <p>Initializes a new instance of the ResourceManagerImpl class.</p>
        <p>
        </p>
      </dd>
    </dl>
    <a name="property-detail">
    </a>
    <a name="method-detail">
    </a>
    <table class="table" cellspacing="0">
      <thead>
        <tr>
          <th>Method Detail</th>
        </tr>
      </thead>
    </table>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.getLoaderNameForResource(System.String)">
    </a>
    <h3>getLoaderNameForResource</h3>
    <pre>public string getLoaderNameForResource(string resourceName)</pre>
    <dl>
      <dd>
        <p>  Determines is a template exists, and returns name of the loader that
            provides it.  This is a slightly less hokey way to support
            the Velocity.templateExists() utility method, which was broken
            when per-template encoding was introduced.  We can revisit this.
            *
            </p>
        <p>
        </p>
        <b>Parameters:</b>
        <dl>
          <dd>
            <code>resourceName</code> - Name of template or content resource
            </dd>
        </dl>
        <b>Returns:</b>
        <dl>
          <dd>class name of loader than can provide it
            
            </dd>
        </dl>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.getResource(System.String,System.Int32,System.String)">
    </a>
    <h3>getResource</h3>
    <pre>public NVelocity.Runtime.Resource.Resource getResource(string resourceName,
                                                       int resourceType,
                                                       string encoding)</pre>
    <dl>
      <dd>
        <p> Gets the named resource.  Returned class type corresponds to specified type
            (i.e. <pre class="code">Template</pre> to <pre class="code">RESOURCE_TEMPLATE</pre>).
            *
            </p>
        <p>
        </p>
        <b>Parameters:</b>
        <dl>
          <dd>
            <code>resourceName</code> - The name of the resource to retrieve.
            </dd>
          <dd>
            <code>resourceType</code> - The type of resource (<pre class="code">RESOURCE_TEMPLATE</pre>,
            <pre class="code">RESOURCE_CONTENT</pre>, etc.).
            </dd>
          <dd>
            <code>encoding</code> -  The character encoding to use.
            </dd>
        </dl>
        <b>Returns:</b>
        <dl>
          <dd>Resource with the template parsed and ready.
            @throws ResourceNotFoundException if template not found
            from any available source.
            @throws ParseErrorException if template cannot be parsed due
            to syntax (or other) error.
            @throws Exception if a problem in parse
            
            </dd>
        </dl>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.getResource(System.String,System.Int32)">
    </a>
    <h3>getResource</h3>
    <pre>public NVelocity.Runtime.Resource.Resource getResource(string resourceName,
                                                       int resourceType)</pre>
    <dl>
      <dd>
        <p> Gets the named resource.  Returned class type corresponds to specified type
            (i.e. <pre class="code">Template</pre> to <pre class="code">RESOURCE_TEMPLATE</pre>).
            *
            </p>
        <p>
        </p>
        <b>Parameters:</b>
        <dl>
          <dd>
            <code>resourceName</code> - The name of the resource to retrieve.
            </dd>
          <dd>
            <code>resourceType</code> - The type of resource (<pre class="code">RESOURCE_TEMPLATE</pre>,
            <pre class="code">RESOURCE_CONTENT</pre>, etc.).
            </dd>
        </dl>
        <b>Returns:</b>
        <dl>
          <dd>Resource with the template parsed and ready.
            @throws ResourceNotFoundException if template not found
            from any available source.
            @throws ParseErrorException if template cannot be parsed due
            to syntax (or other) error.
            @throws Exception if a problem in parse
            *
            </dd>
        </dl>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.initialize(NVelocity.Runtime.RuntimeServices)">
    </a>
    <h3>initialize</h3>
    <pre>public void initialize(NVelocity.Runtime.RuntimeServices rs)</pre>
    <dl>
      <dd>
        <p> Initialize the ResourceManager. It is assumed
            that assembleSourceInitializers() has been
            called before this is run.
            </p>
        <p>
        </p>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.loadResource(System.String,System.Int32,System.String)">
    </a>
    <h3>loadResource</h3>
    <pre>protected internal NVelocity.Runtime.Resource.Resource loadResource(string resourceName,
                                                                 int resourceType,
                                                                 string encoding)</pre>
    <dl>
      <dd>
        <p>
            Loads a resource from the current set of resource loaders
            </p>
        <p>
        </p>
        <b>Parameters:</b>
        <dl>
          <dd>
            <code>resourceName</code> - The name of the resource to retrieve.</dd>
          <dd>
            <code>resourceType</code> - The type of resource (<pre class="code">RESOURCE_TEMPLATE</pre>,
            <pre class="code">RESOURCE_CONTENT</pre>, etc.).
            </dd>
          <dd>
            <code>encoding</code> -  The character encoding to use.</dd>
        </dl>
        <b>Returns:</b>
        <dl>
          <dd>Resource with the template parsed and ready.
            @throws ResourceNotFoundException if template not found
            from any available source.
            @throws ParseErrorException if template cannot be parsed due
            to syntax (or other) error.
            @throws Exception if a problem in parse
            </dd>
        </dl>
      </dd>
    </dl>
    <hr>
    <a name="NVelocity.Runtime.Resource.ResourceManagerImpl.refreshResource(NVelocity.Runtime.Resource.Resource,System.String)">
    </a>
    <h3>refreshResource</h3>
    <pre>protected internal void refreshResource(NVelocity.Runtime.Resource.Resource resource,
                                        string encoding)</pre>
    <dl>
      <dd>
        <p>  Takes an existing resource, and 'refreshes' it.  This
            generally means that the source of the resource is checked
            for changes according to some cache/check algorithm
            and if the resource changed, then the resource data is
            reloaded and re-parsed.
            *
            </p>
        <p>
        </p>
        <b>Parameters:</b>
        <dl>
          <dd>
            <code>resource</code> - resource to refresh
            *
            @throws ResourceNotFoundException if template not found
            from current source for this Resource
            @throws ParseErrorException if template cannot be parsed due
            to syntax (or other) error.
            @throws Exception if a problem in parse
            
            </dd>
        </dl>
      </dd>
    </dl>
    <a name="operator-detail">
    </a>
    <a name="event-detail">
    </a>
    <hr>
    <table class="nav">
      <tr>
        <td class="nav1" colspan="2">
          <table cellspacing="3">
            <tr>
              <td>
                <a href="..\..\..\overview-summary.html"> Overview </a>
              </td>
              <td>
                <a href="namespace-summary.html">Namespace</a> </td>
              <td class="nav1sel"> Type </td>
              <td>Use </td>
              <td>Tree </td>
              <td>Deprecated </td>
              <td>Index </td>
              <td>Help </td>
            </tr>
          </table>
        </td>
        <td class="logo" rowspan="2">.NET Framework</td>
      </tr>
      <tr class="nav2">
        <td>PREV TYPE    NEXT TYPE</td>
        <td>FRAMES    NO FRAMES</td>
      </tr>
      <tr class="nav2">
        <td>SUMMARY: INNER | <a href="#field-summary">FIELD</a> | <a href="#constructor-summary">CONST</a> | PROP | <a href="#method-summary">METHOD</a> | OP | EVENT</td>
        <td>DETAIL: <a href="#field-detail">FIELD</a> | <a href="#constructor-detail">CONST</a> | PROP | <a href="#method-detail">METHOD</a> | OP | EVENT</td>
      </tr>
    </table>
  </body>
</html>